Method and apparatus for transferring signals in a wireless communication system

ABSTRACT

Data is transferred in a wireless communication system, such as a wireless spread spectrum communication system. A plurality of transmitting antennas are provided. Data is encoded to produce a plurality of data streams for each of the plurality of codes. The plurality of data streams are spread with the plurality of spreading codes, and for each transmitting antenna, one of the spread data streams of each code together is combined to produce a spread data vector. Each transmitting antenna transmits its spread data vector. The transmitted spread data vectors are received by each of a plurality of receiving antennas as a received version, and the data is recovered using the received versions.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.10/305,533, filed Nov. 27, 2002 now U.S. Pat. No. 7,170,926 which claimspriority from U.S. provisional application No. 60/334,246, filed Nov.29, 2001, both of which are incorporated herein by reference as if fullyset forth.

FIELD OF INVENTION

This invention relates generally to wireless communication systems. Inparticular, the invention relates to transferring signals using antennaarrays.

BACKGROUND

A multiple input multiple output (MIMO) system is described in FIG. 1.Multiple transmission and/or reception antennas 12 ₁ to 12 _(M) (12), 16₁ to 16 _(N) (16) are used to transfer the communication. Each antenna12, 16 is spatially separated from the other antennas 12, 16. Atransmitter 10 using its antenna array 12 transmits a communication to areceiver 18 through a wireless air interface 18. The receiver 18receives the communication using its antenna array 16. Using bothmultiple transmission and reception antennas 12, 16 is referred to asmultiple input multiple output (MIMO) processing.

Typically, MIMO processing employs multiple antennas at both the basestation transmitter and user equipment receiver. While the deployment ofbase station antenna arrays is already commonly used in wirelesscommunication systems, the simultaneous deployment of base station anduser equipment arrays enable significant increases in capacity and datarates by opening up multiple signaling dimensions.

Available MIMO algorithms address a single-path fading channels.However, wireless communication systems are characterized by multipathfading channels. Algorithms that are designed for single-path fadingchannels, typically exhibit severe degradation in presence of multipath.

Accordingly, it is desirable to have other MIMO systems.

SUMMARY

Data is transferred in a wireless communication system, such as awireless spread spectrum communication system. A plurality oftransmitting antennas are provided. Data is encoded to produce aplurality of data streams for each of the plurality of codes. Theplurality of data streams are spread with the plurality of spreadingcodes, and for each transmitting antenna, one of the spread data streamsof each code together is combined to produce a spread data vector. Eachtransmitting antenna transmits its spread data vector. The transmittedspread data vectors are received by each of a plurality of receivingantennas as a received version, and the data is recovered using thereceived versions.

BRIEF DESCRIPTION OF THE DRAWING(S)

FIG. 1 is an illustration of a transmitter and a receiver using multipleantennas.

FIG. 2 is a simplified block diagram of a preferred MIMO transmitter andreceiver.

FIG. 3A is an embodiment of a MIMO channel equalization device.

FIG. 3B is a flow chart of a MIMO channel equalization embodiment.

FIG. 4A is an alternate embodiment of a MIMO channel equalizationdevice.

FIG. 4B is a flow chart of a MIMO channel equalization alternateembodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

FIG. 2 is a simplified block diagram of a multiple input multiple output(MIMO) transmitter and receiver system. The transmitter 20 can be usedin a user equipment, a base station or both and the receiver 22 may beused in a base station, a user equipment or both. The MIMO systempreferably uses a code division multiple access (CDMA) air interface asshown in FIG. 2, such as a frequency division duplex (FDD)/CDMA, timedivision duplex (TDD)/CDMA or time division synchronous code divisionmultiple access (TD-SCDMA) air interface, although other air interfacesmay be used.

A data vector d is to be transmitted through the wireless air interfaceby the transmitter 20. The transmitter 20 has M antennas 34 ₁ to 34 _(M)(34) in the antenna array. If transmission spatial diversity is notused, M is one, (a single antenna). The antennas 34 are spatiallyseparated so that a low correlation between their received signals isobtained. For use at a base station transmitter having an angle spreadin the range of 1 to 10 degrees, the antenna separation is preferablyseveral wavelengths, such as four wavelengths. For use at a UE receiver,since the angle spread tends to be large, a smaller separation may beused, such as half a wavelength. Based on the implementation, thespatial separations may have other values.

For a preferred implementation of transferring a multicode transmissionas illustrated in FIG. 2, the data vector d to be transmitted by the Mantennas 34 is encoded by a multicode vector encoder 26. For each of theQ spreading codes C₁ to C_(Q), the data is split into M separate datastreams d_(1,1) to d_(M,Q) prior to spreading. The total number ofproduced data streams is M·Q. To illustrate for C₁, data streams d_(1,1)to d_(m,1) are produced. Each of the M streams is associated with anantenna 34.

For each code, the data streams are spread by their code using acorresponding spreading device 28 ₁ to 28 _(Q) (28), such as a mixer.The spread data streams associated with the same antenna 34 are inputinto a combiner 30 ₁ to 30 _(M) (30), such as an adder, associated withthat antenna 34 of the M antennas 34, producing M spread data vectors, s₁ to s _(M). Each combined spread data vector, s ₁ to s _(M), ismodulated to radio frequency by a modulator 32 ₁ to 32 _(M) (32) andradiated by its associated antenna 34 through the wireless air interface24.

The preferred multicode receiver implementation as shown in FIG. 2 isfor use when all of the multicode transmissions experience the samechannel response with respect to a transmission and reception antennapair. This typically occurs in the downlink. Alternately in the uplink,the receiver 22 of FIG. 2 can be used to process a single user'stransmissions, when multiple users are transmitting. The other usertransmissions are treated as noise.

At the receiver 22, each transmission antenna's radiated signal isreceived by each of the N reception antennas 36 ₁ to 36 _(N), as acombined received signal. If reception spatial diversity is not used, Nis one, (a single antenna). N is preferably equal to or greater than M.Each received antenna's signal is demodulated to baseband by ademodulator 38 ₁ to 38 _(N) (38). Each demodulated signal is sampled,such as at the chip rate or a multiple of the chip rate, by a samplingdevice 40 ₁ to 40 _(N) (40), to produce a received vector for eachantenna 36, r ₁ to r _(N). The combined received vector r comprises r ₁to r _(N).

The combined received vector r is input into a MIMO channel equalizationdevice 44. A training sequence signal r′ is input into a channelestimation device 44. The channel estimation device 42 estimates thechannel response for each reception and transmission antennacombination. For an i^(th) receiving antenna 36 and a j^(th)transmitting antenna 34, the channel response as a k^(th) instant intime is h_(ij)(k). The overall channel response for all antennacombinations at the k^(th) instant of time is per Equation 1A.

$\begin{matrix}{{H(k)} = \begin{bmatrix}{h_{1,1}(k)} & \ldots & {h_{1,M}(k)} \\\vdots & \vdots & \vdots \\{h_{N,1}(k)} & \ldots & {h_{N,M}(k)}\end{bmatrix}} & {{Equation}\mspace{20mu} 1A}\end{matrix}$

The overall channel response is per Equation 1B.

$\begin{matrix}{H = \begin{bmatrix}{H(0)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\{H(1)} & {H(0)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\{H(2)} & {H(1)} & {H(0)} & 0 & 0 & 0 & 0 & 0 & 0 \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{H\left( {L - 1} \right)} & {H\left( {L - 2} \right)} & {H\left( {L - 3} \right)} & \ldots & \ldots & {H(0)} & 0 & \ldots & 0 \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\0 & 0 & \ldots & 0 & {H\left( {L - 1} \right)} & \ldots & \ldots & \ldots & {H(0)} \\0 & 0 & 0 & \ldots & 0 & {H\left( {L - 1} \right)} & \ldots & \ldots & {H(1)} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\0 & 0 & 0 & 0 & 0 & 0 & \ldots & 0 & {H\left( {L - 1} \right)}\end{bmatrix}} & {{Equation}\mspace{20mu} 1B}\end{matrix}$

The overall channel response H is passed to the MIMO channelequalization device 44. The MIMO channel equalization device 44 uses thechannel response matrix H and equalizes the received vector r tocompensate for the channel distortion experienced through the wirelessair interface 24, producing a spread data vector s. The spread datavector s is reordered by a spread vector reordering device 46 so thateach transmitting antenna's spread data vector s ₁ to s _(M) isrecovered. Each transmitting antenna's spread data vector s ₁ to s _(M)is despread by a despreading device 48 using the spreading codes, C₁ toC_(Q), to estimate data for each of the M encoded data streams for eachantenna, d _(1,1) to d _(M,Q). A despread data stream decoder 50combines the data streams d _(1,1) to d _(M,Q) to recover the originaldata vector d.

Each communication transferred by a particular transmission/receptionantenna combination experiences a different multi-path environment thanthe other transmission/reception antenna combinations, due to thespatial diversity. By processing the received multi-path components ofall of the reception antennas 36 ₁ to 36 _(N), the capacity and maximumdata rate of the system is significantly increased.

FIG. 3A is an embodiment of a MIMO channel equalization device 44 andFIG. 3B is a flow chart of a MIMO channel equalization embodiment. Otherembodiments for a MIMO channel equalization device, such as Cholesky orapproximate Cholesky decomposition, can also be used. The receivedsamples of the channel impulse responses for each antenna pair are perEquation 2.h _(ij)(k), where k=0, . . . ,L−1  Equation 2

i is the i^(th) receiving antenna. j is the j^(th) transmitting antenna.k is the k^(th) sample of the impulse response of length L. The channelimpulse response of all reception and transmission antenna pairings forthe k^(th) sample is per Equation 3.

$\begin{matrix}{{H(k)} = \begin{bmatrix}{h_{1,1}(k)} & \ldots & {h_{1,M}(k)} \\\vdots & \vdots & \vdots \\{h_{N,1}(k)} & \ldots & {h_{N,M}(k)}\end{bmatrix}} & {{Equation}\mspace{20mu} 3}\end{matrix}$

The transmitted spread data vector s has N_(s)·M dimension vectors s(k).N_(s) is the number of transmitted data symbols. The overall receivedvector r has N_(s)+L−2 received vectors of dimension N and is perEquation 4.

$\begin{matrix}{\begin{bmatrix}{\underset{\_}{r}(0)} \\{\underset{\_}{r}(1)} \\{\underset{\_}{r}(2)} \\\vdots \\{\underset{\_}{r}\left( {N_{s} + L - 2} \right)}\end{bmatrix} = {{\begin{bmatrix}{H(0)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\{H(1)} & {H(0)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\{H(2)} & {H(1)} & {H(0)} & 0 & 0 & 0 & 0 & 0 & 0 \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{H\left( {L - 1} \right)} & {H\left( {L - 2} \right)} & {H\left( {L - 3} \right)} & \ldots & \ldots & {H(0)} & 0 & \ldots & 0 \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\0 & 0 & \ldots & 0 & {H\left( {L - 1} \right)} & \ldots & \ldots & \ldots & {H(0)} \\0 & 0 & 0 & \ldots & 0 & {H\left( {L - 1} \right)} & \ldots & \ldots & {H(1)} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\0 & 0 & 0 & 0 & 0 & 0 & \ldots & 0 & {H\left( {L - 1} \right)}\end{bmatrix}\begin{bmatrix}{\underset{\_}{s}(0)} \\{\underset{\_}{s}(1)} \\{\underset{\_}{s}(2)} \\\vdots \\{\underset{\_}{s}\left( {L - 1} \right)} \\\vdots \\{\underset{\_}{s}\left( {N_{s} - 1} \right)}\end{bmatrix}} + \underset{\_}{w}}} & {{Equation}\mspace{20mu} 4}\end{matrix}$

w is the noise vector. Alternately, Equation 4 can be written asEquation 5.r=Hs+w   Equation 5The r and w vectors have a length of (N_(s)+L−1)·N. The s vector has alength of N_(s)M and H is a (N_(s)+L−1)·N by N_(s)·M matrix.

As shown in Equation 4, the H matrix is approximately block circulant.To make the H matrix more block circulant, L−1 block columns are addedto the H matrix, to produce an extended H matrix, and a correspondingnumber of zeros added to the s vector, to produce an extended s vector.The L−1 column blocks are added in accordance with the H matrice's blockcirculant structure. After the extending of the H matrix and the svector, the extended H matrix has a dimension of (N_(s)+L−1)·N by(N_(s)+L−1)·M and s has a length of (N_(s)+L−1)·M.

For shorthand, N_(s)+L−1 is represented by D, so that D=N_(s)+L−1. Theextended H matrix of size DN by DM with blocks of size N by M isdecomposed per Equation 6.H _((N,M)) =F _((N)) ⁻¹Λ_((N,M)) F _((M))  Equation 6F_((N)) is a block Fourier transform with a block size of N by N andF_((M)) is a block Fourier transform with a block size of M by M.F_((N)) is per Equation 7.F_((N))=F⊕I_(N)  Equation 7⊕ is the Kronecker product operation and I_(N) is an N by N identitymatrix.

F_((M)) is per Equation 8.F_((M))=F⊕I_(M)  Equation 8I_(M) is an M by M identity matrix.

The block-diagonal matrix Λ_((N,M)) is, preferably, a block-Fouriertransform of the first block-column of H, although another column may beused, (after being permuted), step 84. A block-Fourier transform device62 produces Λ_((N,M)) by taking a block-transform of a column of H.Λ_((N,M)) is preferably derived from Equation 9.diag _((N,M))(Λ_((N,M)))=F _((N)) H _((N,M))(:,1:M)  Equation 9diag_((N,M))(Λ_((N,M))) is the block diagonal of Λ_((N,M)). (:,1: M)represents the first block column of width M. By using a single blockcolumn of H to derive Λ_((N,M)), the H matrix is approximated as being ablock circulant matrix.

By substituting Equation 6 into Equation 2, Equation 10 results.Λ_((N,M))F_((M)) s=F_((N)) r  Equation 10

To solve for s, initially, a vector x is determined per Equation 11,step 86.x=F_((N)) r  Equation 11x is preferably determined by an N non-block discrete Fourier transformof length D. A block-Fourier transform device 64 produces x by takingthe block-transform of r.

Subsequently, a vector y is determined per Equation 12, step 88.Λ_((N,M)) y=x  Equation 12A y determining device 66 produces y.

Since Λ_((N,M)) is a block diagonal matrix, y is preferably determinedon a block-by-block basis by solving D systems of equations of smallersize, such as per Equation 13.Λ^(i) _((N,M)) y _(i)=x _(i) i=1, . . . D  Equation 13Λ^(i) _((N,M)) is the i^(th) block of Λ_((N,M)). y _(i) is the i^(th) Mby 1 sub-vector of y. x _(i) is the i^(th) N by 1 sub-vector of x.

Since Λ^(i) _((N,M)) is unstructured, one approach to solve Equation 13is to use Cholesky decomposition of Equation 14 and forward and backwardsubstitution, although other approaches may be used.(Λ^(i) _((N,M)))^(H)Λ^(i) _((N,M))  Equation 14

If the number of receiving antennas N is equal to the number oftransmitting antennas, Λ^(i) _((N,M)) is a square matrix and y can bedetermined by inverting Λ^(i) _((N,M)). For small values of N, a matrixinversion may be more efficient than performing a Choleskydecomposition.

The s vector is determined per Equation 15, step 90.s=F ⁻¹ _((M)) y   Equation 15A block inverse Fourier transform device 68 is used to produce s. Oneapproach to determining s using Equation 15 is by performing M non-blockinverse discrete Fourier transforms of dimension D, although otherapproaches may be used.

FIG. 4A is an alternate embodiment of a MIMO channel equalization device44B and FIG. 4B is a flow chart of the MIMO channel equalizationalternate embodiment. To determine s, both sides of Equation 2 aremultiplied by H^(H), per Equation 16.H ^(H) r=Rs+H ^(H) w=Rs+n   Equation 16(·)^(H) is the conjugate transpose operation. n is the equalized noisevector. R is the channel cross correlation matrix and is determined byan R determination device 70 using the H matrix, step 92. R for a zeroforcing solution is per Equation 17.R=H^(H)H  Equation 17

For a minimum mean square errors (MMSE) solution, R is per Equation 18.R=H ^(H) H +σ ² I  Equation 18σ² is the variance of the noise vector w and I is an identity matrix.

The channel cross correlation matrix R has a structure per Equation 19.

$\begin{matrix}{R = \begin{bmatrix}R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} & 0 & 0 & 0 & 0 & 0 & 0 \\R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} & 0 & 0 & 0 & 0 & 0 \\R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} & 0 & 0 & 0 & 0 \\R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} & 0 & 0 & 0 \\\vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} & 0 & 0 \\R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} & 0 \\0 & R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots & R_{L - 1} \\0 & 0 & R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} & \ldots \\0 & 0 & 0 & R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} & R_{3} \\0 & 0 & 0 & 0 & R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} & R_{2} \\0 & 0 & 0 & 0 & 0 & R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0} & R_{1} \\0 & 0 & 0 & 0 & 0 & 0 & R_{L - 1}^{H} & \vdots & R_{3}^{H} & R_{2}^{H} & R_{1}^{H} & R_{0}\end{bmatrix}} & {{Equation}\mspace{20mu} 19}\end{matrix}$

After the adding of L−1 columns to the H matrix as previously described,a close to block circulant approximation of the R matrix can be derived,referred to as the extended R matrix. The dimensions of the extended Rmatrix are DM by DM.

Using the extended R matrix, Equation 20 is used to determine s.H^(H) r=Rs  Equation 20

By approximating R and H^(H) as block circulant matrices, R isdecomposed per Equation 21.R=F ⁻¹ _((M))Λ^(R) _((M,M)) F _((M))  Equation 21Λ^(R) _((M,M)) is preferably derived from a first block column of R perEquation 22, although another column may be used, (after beingpermutated), step 94.diag _((M,M))(Λ^(R) _((M,M)))=F_((M))R_((M,M))(:,1:M)  Equation 22diag_((M,M))(Λ^(R) _((M,M))) is the block diagonal of Λ^(R) _((M,M)). Ablock-Fourier transform device 72 is used to determine Λ^(R) _((M,M)) bytaking a block-Fourier transform of a block column of R.

H^(H) is decomposed per Equation 23.H ^(H) =F ⁻¹ _((M))Λ^(H) _((M,N)) F _((N))  Equation 23

79 ^(H) _((M,N)) is preferably determined using the first block columnof H^(H) per Equation 24, although another block column may be used,(after being permuted), step 96.diag _((M,N))(Λ^(H) _((M,N)))=F _((M)) H ^(H) _((M,N))(:,1:N)  Equation24diag_((M,N))(Λ^(H) _((M,N))) is the block diagonal of Λ^(H) _((M,N)).

A block-Fourier transform device 74 is used to determine Λ^(H) _((M,N))by taking a block-Fourier transform of a block-column of H^(H).

By substituting 21 and 23 into 20, Equation 25 results.Λ^(H) _((M,N))F_((N)r=Λ) ^(R) _((M,M))F_((M)) s  Equation 25

Solving for s, Equation 26 results.s=F ⁻¹ _((M))(Λ^(R) _((M,M)))⁻¹Λ^(H) _((M,N)) F _((N)) r   Equation 26

Determining s is preferably performed in a four step process. Initially,x is determined per Equation 27, step 98.x=F_((N)) r  Equation 27The block-Fourier transform is preferably performed by an N non-blockFourier transform of length D. A block-Fourier transform device 76 takesa block-Fourier transform of r to determine x.

In a second step, y is determined per Equation 28, step 100.y=Λ^(H) _((M,N)) x  Equation 28A y determining device 78 uses Λ^(H) _((M,N)) and x to determine y.

In a third step, z is determined per Equation 29, step 102.Λ^(R) _((M,M)) z=y  Equation 29A z determining device 80 determines z using Λ^(R) _((M,M)) and y.

Preferably, since Λ^(R) _((M,M)) is a block diagonal matrix, Equation 29is solved using D systems of smaller size per Equation 30.(Λ^(R) _((M,M)))^(i) z _(i) =y i=1, . . . , D  Equation 30

(Λ^(R) _((M,M)))^(i) is the i^(th) block of Λ^(R) _((M,M)). z _(i) isthe i^(th) M by 1 sub-vector of z. y _(i) is the i^(th) M by 1sub-vector of y.

Since (Λ^(R) _((M,M)))^(i) is unstructured, one approach to determine(Λ^(R) _((M,M)))^(i) is to use Cholesky decomposition of ((Λ^(R)_((N,M)))^(i))^(H)(Λ^(R) _((M,M)))^(i) and forward and backwardsubstitution, although other approaches may be used.

In the fourth step, s is determined per Equation 31 by performing an Mnon-block inverse discrete Fourier transform of dimension D, step 104.s=F ⁻¹ _((M)) z   Equation 31A block-inverse Fourier transform device 82 is used to take an inverseblock transform of z to produce s.

To recover data from the estimated spread data vector s using eitherembodiment, the spread data vector s is separated into its M transmitteddata streams, s _(m) where m=1, . . . ,M, by the spread vectorreordering device. The spread data vector s is the result ofconcatenating the data stream vectors s _(m) and reordering by groupingthe same chip intervals together, as per Equation 32.

$\begin{matrix}{\underset{\_}{s} = \begin{bmatrix}s_{1,1} \\\vdots \\s_{M,1} \\\vdots \\s_{1,N_{c}} \\\vdots \\s_{M,N_{c}}\end{bmatrix}} & {{Equation}\mspace{20mu} 32}\end{matrix}$s_(m,j) demotes the j^(th) chip interval of the m^(th) data stream.

To recover each spread data vector stream s _(m), the chips of theestimated spread data vector s are reordered per Equation 33, producings _(REORDERED).

$\begin{matrix}{{\underset{\_}{s}}_{REODERED} = {\begin{bmatrix}s_{1,1} \\\vdots \\s_{1,N_{C}} \\\vdots \\s_{M,1} \\\vdots \\s_{M,N_{c}}\end{bmatrix} = \begin{bmatrix}s_{1} \\\vdots \\s_{M}\end{bmatrix}}} & {{Equation}\mspace{20mu} 33}\end{matrix}$

Each of these data stream spread data vectors s _(m) is despread by thecorresponding spreading codes, C₁ to C_(Q), to estimate the symbols ofthat data stream by the despreading device 48. The estimated symbols foreach data stream are decoded by the despread data stream decoder 50 torecover the original data d.

1. A user equipment comprising: a plurality of receiving antennasconfigured to receive signals from a plurality of transmitting antennasat a single site; a plurality of sampling devices configured to sample areceived version of the received signals as received by each of theplurality of receiving antennas to produce a combined received signal; achannel estimation device configured to determine a channel response foreach receiving and transmitting antenna combination and produce anoverall channel response; a MIMO channel equalization device configuredto process the combined received signal and the overall channel responseusing a block-Fourier transform based algorithm to produce a spread datavector, wherein the MIMO channel equalization device further comprises:a first block-Fourier transform device configured to process ablock-column of the overall channel response to produce a diagonalmatrix; a second block Fourier transform device configured to processthe combined received signal to take a block-Fourier transform of thecombined received signal; and a processing device configured to use thediagonal matrix and the block-Fourier transform of the combined receivedsignal to produce a Fourier transform of the spread data vector; and aninverse block-Fourier transform device configured to take an inverseblock Fourier transform of the Fourier transform of the spread datavector; and a despreading device configured to despread the spread datavector to recover data of the received signals.
 2. The user equipment ofclaim 1 further comprising a spread vector reordering device configuredto reorder the spread data vector so that chips of transmitted by eachtransmitting antenna are grouped together.
 3. The user equipment ofclaim 1 further comprising a despread data stream decoder configured todecode data recovered by the depreading device.
 4. A user equipmentcomprising: a plurality of receiving antennas configured to receivesignals from a plurality of transmitting antennas at a single site; aplurality of sampling devices configured to sample a received version ofthe received signals as received by each of the plurality of receivingantennas to produce a combined received signal; a channel estimationdevice configured to determine a channel response for each receiving andtransmitting antenna combination and produce an overall channelresponse; a MIMO channel equalization device configured to process thecombined received signal and the overall channel response using ablock-Fourier transform based algorithm to produce a spread data vector,wherein the MIMO channel equalization device further comprises: a crosschannel correlation determining device configured to produce a crosschannel correlation matrix using the overall channel response; a firstblock-Fourier transform device configured to process a block-column ofthe cross channel correlation matrix to produce a cross correlationdiagonal matrix; a second block-Fourier transform device configured toprocess a block-column of the overall channel response matrix to producea channel response diagonal matrix; a third block-Fourier transformdevice configured to process the combined received signal to take ablock-Fourier transform of the combined received signal; a combiningdevice configured to combine the channel response diagonal matrix andthe block-Fourier transform of the combined received signal to produce acombined result; a processing device configured to use the crosscorrelation diagonal matrix and the combined result to produce a Fouriertransform of the spread data vector; and a block-inverse Fouriertransform device configured to process the Fourier transform of thespread data vector to produce the spread data vector; and a despreadingdevice configured to despread the spread data vector to recover data ofthe received signals.
 5. The user equipment of claim 4 furthercomprising a spread vector reordering device configured to reorder thespread data vector so that chips of transmitted by each transmittingantenna are grouped together.
 6. The user equipment of claim 4 furthercomprising a despread data stream decoder configured to decode datarecovered by the depreading device.